using System;
using System.Collections.Generic;
using RFS.BizLogic.PaiShi.Ports.Adapters;
using RFS.Domain.PaiShi;
using RFS.Domain.PaiShi.Accounting;
using RFS.Domain.PaiShi.Zuhuo;

namespace RFS.BizLogic.PaiShi.Ports
{
    public interface IRepoPaiShi
    {
        IEnumerable<dynamic> GetJsonDataSet(BizFlowNodeEnum dn = BizFlowNodeEnum.JiaoYi, DateTime bd = default,
            DateTime ed = default);

        IEnumerable<dynamic> GetJsonDataSetTotal(BizFlowNodeEnum dn, DateTime bd = default, DateTime ed = default);
        void TryInit();
        IEnumerable<dynamic> ExecuteSqlQuery(string querysql);
        IEnumerable<dynamic> GetJiaoYiPrice(DateTime today);
        IEnumerable<dynamic> GetUnRecordedInAccJsonDataSet(BizFlowNodeEnum jiaoYi, AccountPeriod period);
        IDayBasedWorkFlowNodeAccountingVoucherSetWrapper GetAVS(AccountPeriod perio);

        void SaveRecordedOrderIds(AVSEntity o  );
        void DeleteRecordedOrderIds(ulong avsId);
        IEnumerable<ZuhuaRecord> GetZuhuoOrderItemSet(AccountPeriod day);
        IEnumerable<dynamic> GetJsonDataSetFahuo(  AccountPeriod jyDate);
    }
}